#pragma once

#include <QtGui/QGraphicsScene>
#include <QtCore/QPointF>
#include <QtGui/QVector3D>

class QtGraphicsStateScene : public QGraphicsScene
{
	Q_OBJECT
public:
	QtGraphicsStateScene(QObject* parent = 0);
	virtual ~QtGraphicsStateScene(void);

	virtual void save(QDataStream &dataStream);
	virtual void load(QDataStream &dataStream);
public slots:
	void playAnim(bool bPlay);
	void selectionChange();
	void stateChanged(const QPointF& trans, const QVector3D& rot, const QPointF& scale);
signals:
	void selected(const QPointF&, const QVector3D&, const QPointF&);
	void changeProperties(QWidget* widgets);
};
